package com.jixi.controller;

import com.jixi.common.result.PageResult;
import com.jixi.common.result.Result;
import com.jixi.pojo.dto.AddCooperateDto;
import com.jixi.service.CooperateSchoolCompanyService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

@Slf4j
@RestController
@RequestMapping("/education")
public class CooperateSchoolCompanyController {
	
	@Autowired
	private CooperateSchoolCompanyService cooperateSchoolCompanyService;
	
	/**
	 * 合作关系条件列表分页查询
	 *
	 * @param pageNum       页码
	 * @param pageSize      每页数量
	 * @param schoolId      学校id
	 * @param companyId     餐饮公司id
	 * @param status        状态
	 * @return 学校列表
	 */
	@GetMapping("/cooperate/list")
	public Result<PageResult> cooperateList(
			Integer pageNum,
			Integer pageSize,
			Long schoolId,
			Long companyId,
			Integer status
	) {
		return cooperateSchoolCompanyService.cooperatePage(pageNum,pageSize,schoolId,companyId,status);
	}
	
	/**
	 * 添加合作关系
	 *
	 * @param addCooperateDto 学校合作餐饮公司信息
	 * @return 添加结果
	 */
	@PostMapping("/cooperate/add")
	public Result addCooperate(@RequestBody AddCooperateDto addCooperateDto) {
		return cooperateSchoolCompanyService.addCooperate(addCooperateDto);
	}
	
	/**
	 * 修改合作关系状态
	 *
	 * @param cooperateId 合作关系id
	 * @param status      状态
	 * @return 修改结果
	 */
	@PutMapping("/cooperate/status")
	public Result updateStatus(Long cooperateId, Integer status) {
		return cooperateSchoolCompanyService.updateCooperateStatus(cooperateId,status);

	}
	
	/**
	 * 删除合作关系
	 *
	 * @param cooperateId 合作表id
	 * @return 删除结果
	 */
	@DeleteMapping("/cooperate/delete")
	public Result deleteCooperate(Long cooperateId) {
		return cooperateSchoolCompanyService.deleteCooperateById(cooperateId);
	}
	
}
